剑指offer 55.链表中环的入口结点
题目
给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。
思路
现在成了数学题了,首先设快慢两点都在开头,快结点一下走两步,慢结点一下走一步,当快结点追上慢结点就代表存在环。
当二者相遇,快结点回到开头,慢结点继续走,当二者再次相遇时,结点就为环的入口结点。记得要考虑到没有下一个结点的可能性。
数学问题我就不证明了,画一个图就能理解了。
代码
1 | public class ListNode { |
缘何不懂,坚持不懈磨砺精炼
给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。
现在成了数学题了,首先设快慢两点都在开头,快结点一下走两步,慢结点一下走一步,当快结点追上慢结点就代表存在环。
当二者相遇,快结点回到开头,慢结点继续走,当二者再次相遇时,结点就为环的入口结点。记得要考虑到没有下一个结点的可能性。
数学问题我就不证明了,画一个图就能理解了。
1 | public class ListNode { |
微信支付
支付宝